// 众筹项目详情JS

$(function(){
    // 获取链接参数
    var url=window.location.search;
    var id = url.substring(url.lastIndexOf('=')+1, url.length);
    // tab切换--项目详情与项目话题切换
    $('.detail_top').click(function(){
        $(this).addClass('active');
        $('.topic_top').removeClass('active');
        $('.item_detai').css('display','block');
        $('.item_topic').css('display','none');
    });
    $('.topic_top').click(function(){
        $(this).addClass('active');
        $('.detail_top').removeClass('active');
        $('.item_detai').css('display','none');
        $('.item_topic').css('display','block');
    });
    if($.cookie('user')!=''&&$.cookie('user')!=null){
        strs=$.cookie('user').split(",")
        var token=''
        for(var i in strs){
            token=strs[6]
        }
        var data = {itemCommonId:id,token:token};
        // 获取众筹详情
        getCrowdDetail(data,id);
    }else{
        var data = {itemCommonId:id};
        // 获取众筹详情
        getCrowdDetail(data,id);
    }
    // 获取话题列表
    getTopicContentList(id);
});
// 获取众筹详情
function getCrowdDetail(data,id){
    $.ajax({
        url:new_url+'shop/crowdfunding/getCrowdDetail',
        type:'post',
        data:data,
        dataType:'json',
        success:function(e){
            if(e.code == '0'){
                // 隐藏正在加载中
                $('.crowd_detail_bg').css('display','none');
                $('.crowd_server_bg').css('display','none');
                // 显示详情
                $('.crowd_detail').css('display','block');
                $('.crowd_server').css('display','block');
                // 众筹项目名称
                $('#itemName, #itemNameOne').html(e.data[0].itemName);
                // 众筹项目名称  增加隐藏域
                $('body').append('<input type="hidden" class="itemName" value="'+e.data[0].itemName+'" />');
                // 众筹项目简介  增加隐藏域
                $('body').append('<input type="hidden" class="itemSummary" value="'+e.data[0].itemSummary+'" />');
                // 项目状态 2.众筹中 3.已完成 4.失败
                if(e.data[0].itemState == '2'){     // 众筹中
                    $('#itemName').append('<span>众筹中</span>'); 
                    // 进度显示
                    var point = e.data[0].raiseProportion;
                    var percent = Number(point*100).toFixed(2)+'%';
                    $('.raised_jd').html('').append('进度：'+ percent);
                    if(point>= '1'){
                        $('.crowd_jd').css('width','100%');
                    }else{
                        $('.crowd_jd').css('width',percent);
                    }
                }else if(e.data[0].itemState == '3'){     // 众筹已完成
                    $('#itemName').append('<span style="background: #2fd6a2">已完成</span>'); 
                    // 进度显示--'众筹完成'
                    var point = e.data[0].raiseProportion;
                    var percent = Number(point*100).toFixed(2)+'%';
                    $('.raised_jd').html('').append('众筹完成').css('color','#2fd6a2');
                    $('.crowd_jd').addClass('crowd_jd_green');
                    if(point>= '1'){
                        $('.crowd_jd').css('width','100%');
                    }else{
                        $('.crowd_jd').css('width',percent);
                    }
                }else if(e.data[0].itemState == '5'){     // 众筹失败
                    $('#itemName').append('<span style="background: #999">众筹失败</span>'); 
                    // 进度显示--'众筹失败'
                    $('.raised_jd').html('').append('众筹失败').css('color','#999');
                    $('.crowd_jd').css('width','0%');
                };
                // 项目的视频播放--有路径显示视频播放，没有的隐藏视频播放
                if(e.data[0].itemVideo != ''){
                    // 显示视频播放
                    $('#itemVideo').css("display","block");
                    var videoStr ='';
                    videoStr += '<source src="'+e.data[0].itemVideo+'" type="video/ogg" />';
                    videoStr += '<source src="'+e.data[0].itemVideo+'" type="video/mp4" />';
                    videoStr += '<source src="'+e.data[0].itemVideo+'" type="video/webm" />';
                    videoStr += '<object data="'+e.data[0].itemVideo+'" width="700" height="300">';
                    videoStr += '<embed width="700" height="300" src="'+e.data[0].itemVideo+'" />';
                    videoStr += '</object>';
                    $('#itemVideo').append(videoStr);
                }else{
                    // 隐藏视频播放
                    $('#itemVideo').css("display","none");
                }
                // 图文详情
                $('.item_detai').append(html_decode(e.data[0].itemDetails)); 
                // 众筹项目信息--已筹集资金
                $('.raised_price').append('<span>￥</span><span>'+e.data[0].raisedAmount+'</span>');
                // 剩余时间显示
                var timeRemaining = e.data[0].deadline;     // 结束时间的时间戳
                if(timeRemaining != '0'){
                    var timeRemainOne = formatDate(timeRemaining);      // 时间格式化  '2017/7/22 16:0:0'
                    var remainingTime = getEndTime(timeRemainOne);
                }else{
                    var remainingTime = '∞';
                }
                $('.raise_timeRemaining').append('<span>'+remainingTime+'</span>');     // 剩余时间  getEndTime(timeRemainOne)
                // 目标金额
                $('.raise_expectedAmount').append('<span>￥'+e.data[0].expectedAmount+'</span>')
                // 收藏
                if(e.data.isCollect=='1'){
                    $('.item_collect').text('已收藏（'+e.data[0].itemCollect+'）');
                    $('.item_collect').click(function(){
                        tc('您已经收藏过了！')
                    });
                }else{
                    $('.item_collect').text('收藏（'+e.data[0].itemCollect+'）');
                    // 点击收藏
                    $('.item_collect').click(function(){
                        // 点收藏按钮  判断是否登录
                        if($.cookie('user')!=''&&$.cookie('user')!=null){       // 已登录
                            strs=$.cookie('user').split(",")
                            var token=''
                            for(var i in strs){
                                token=strs[6]
                            }
                            addNewItemCollect(id,token);    // 添加收藏
                        }else{      // 未登录
                            setTimeout(function(){
                                $('.popover_m, .site_bg').fadeIn()
                                $('.gb_01, .popover_m').click(function(){
                                    $('.popover_m, .site_bg').fadeOut()
                                })
                            },200);
                        }
                    });
                }
                // 该项目下的所有档位
                var itemListTpl = $('#itemListTpl').html();
                for(var i=0;i<e.data[0].itemList.length;i++){
                    // 是否限购
                    var purchaseRestriction = ''
                    if(e.data[0].itemList[i].purchaseRestriction == '0'){       // 没有设置限购
                        purchaseRestriction = ''
                    }else{      //  有设置限购
                        purchaseRestriction = '(限'+e.data[0].itemList[i].purchaseRestriction+'份)';
                    };
                    // 众筹项目图片  增加隐藏域
                    $('body').append('<input type="hidden" class="itemImage" value="'+e.data[0].itemList[0].itemImage+'" />');
                    var itemListCont=template( 
                        itemListTpl, { 
                            itemList: [{ 
                                gearsName:e.data[0].itemList[i].gearsName,      // 规格名称
                                itemFreight:e.data[0].itemList[i].itemFreight,  // 邮费 0 包邮 >0 邮费
                                itemId:e.data[0].itemList[i].itemId,            // 档位ID
                                itemStorage:e.data[0].itemList[i].itemStorage,  // 规格库存
                                purchaseQuantityNow:e.data[0].itemList[i].purchaseQuantityNow,  // 规格目前总购买数量
                                purchaseRestriction:purchaseRestriction,        // 规格限购数量1
                                returnTime:e.data[0].itemList[i].returnTime,                    // 回报时间 到期时间发货
                                surplus:e.data[0].itemList[i].surplus,          // 规格剩余库存
                                unitPrice:e.data[0].itemList[i].unitPrice,      // 规格的总金额
                                num:e.data[0].itemList[i].purchaseRestriction,   // 规格限购数量1
                                itemImage:e.data[0].itemList[i].itemImage   // 规格图片
                            }] 
                        } 
                    ); 
                    $('.item_list').append(itemListCont); 
                }
                if(e.data[0].itemState=='2'){
                    $('.goods_num').change(function(){
                        var itemNum = $(this).val();    // 输入值
                        var limitNum = parseInt($(this).next().next().val());   // 限购数量
                        var nowNum = parseInt($(this).next().next().next().val());  // 剩余库存
                        // 当输入值小于1时候,让文本改变时候,将数字改为1
                        if(itemNum<='1'){       
                            $(this).val('1');
                            tc('购买数量不能小于“1”');
                        }
                        // 输入框数字最大为限购数,如果不限购,则为库存
                        if(limitNum=='0'){
                            if(itemNum>=nowNum){
                                $(this).val(nowNum);
                                tc('购买数量不能大于库存');
                            }
                        }else{
                            if(itemNum>=limitNum){
                                $(this).val(limitNum);
                                tc('购买数量不能大于限购份额');
                            }
                        }
                    });
                    // 减法 小于1时候,让购买数量为1
                    $('.num_minus').click(function(){
                        var itemNum = parseInt($(this).next().val());   // 输入值
                        if(itemNum>1){
                            itemNum = itemNum - 1;
                        }else{
                            itemNum = 1;
                            tc('购买数量不能小于“1”');
                        }
                        $(this).next().val(itemNum);
                    });
                    // 加法
                    $('.num_add').click(function(){
                        var itemNum = $(this).prev().val();     // 输入值
                        var limitNum = parseInt($(this).next().val());      // 限购数量
                        var nowNum = parseInt($(this).next().next().val());     // 剩余库存
                        // 输入框数字最大为限购数,如果不限购,则为库存
                        if(limitNum=='0'){
                            if(itemNum<nowNum){
                                itemNum = Number(itemNum) + 1;
                            }else{
                                itemNum = nowNum;
                                tc('购买数量不能大于库存');
                            }
                        }else{
                            if(itemNum<limitNum){
                                itemNum = Number(itemNum) + 1;
                            }else{
                                itemNum = limitNum;
                                tc('购买数量不能大于限购份额');
                            }
                        }
                        $(this).prev().val(itemNum)
                    });
                }else{
                    if(e.data[0].itemState=='3'){
                        $('.num_add, .num_minus').click(function(){
                            tc('众筹已完成！')
                        })
                    }else if(e.data[0].itemState=='5'){
                        $('.num_add, .num_minus').click(function(){
                            tc('众筹已失败！')
                        })
                    }
                    
                }
                // 库存为0时，购买按钮不能用
                $('.support_btn').each(function(){
                    var surplus = $(this).parents().find('.item_storage').attr('data-surplus');     // 该规格库存
                    var itemState = e.data[0].itemState; 
                    // var itemState = 3; 
                    // 众筹状态为 “2 众筹中” 购买按钮才能用 
                    if(itemState == '2'){ 
                        // 库存为0时，购买按钮不能用 
                        if(surplus <= '0'){ 
                            $(this).attr('href','javascript:;');
                            $(this).css({
                                "color":"#c5c5c5",
                                "border":"#e5e5e5 solid 1px",
                                "background":"#f2f2f2"
                            });
                            // $(this).removeAttr('href');
                            // tc('库存为“0”，不能购买');
                        }else{
                            $(this).click(function(){
                                // 判断是否为登录状态
                                if($.cookie('user')!=''&&$.cookie('user')!=null){
                                    var itemId = $(this).attr('data-item-id');      // 档位ID
                                    var itemImages = $(this).attr('data-item-image');       // 图片
                                    var itemName = $(this).parents().find('.item_name').attr('data-gear-name');       // 名称
                                    var itemFreight = $(this).parents().find('.item_freight').attr('data-freight');       // 运费
                                    var unitPrice = $(this).parents().find('.item_list_top').attr('data-unit-price');       // 单价
                                    var itemNum = $(this).parents('.item_btm').find('.goods_num').val();       // 数量
                                    var itemStorage = $(this).parents().find('.item_storage').attr('data-surplus');       // 库存 
                                    // 设置cookies    
                                    // cookies名称 crowd
                                    // 数据数组拼接格式：档位ID+名称+图片+单价+购买数量+运费
                                    var crowdfunding = new Array(itemId,itemName,itemImages,unitPrice,itemNum,itemFreight);
                                    $.cookie('crowd',crowdfunding,{path:'/'}); 
                                    if(itemStorage != '0'){
                                        setTimeout(function(){
                                            window.location.href='pay_commit.html'; 
                                        },500);
                                    }
                                }else{
                                    setTimeout(function(){
                                        $('.popover_m, .site_bg').fadeIn()
                                        $('.gb_01, .popover_m').click(function(){
                                            $('.popover_m, .site_bg').fadeOut()
                                        });
                                    },200)
                                }
                            });
                        }
                    }else{
                        $(this).removeClass('support_btn').addClass('support_btn_01');
                        if(itemState == '3'){
                            $(this).click(function(){
                                tc('众筹已完成！');
                            });
                        }else{
                            $(this).click(function(){
                                tc('众筹已失败！');
                            });
                        }
                    }
                    
                    
                });
            };
        },
    });
}
// 获取话题列表
function getTopicContentList(id){
    $.ajax({
        url:new_url+'shop/crowdfunding/getTopicContentList',
        type:'post',
        data:'itemCommonid='+id,
        dataType:'json',
        success:function(s){
            if(s.code == '0'){
                $('.topic_top').append('<span>'+s.data.length+'</span>');
                if(s.data.length>0){
                    // 话题列表
                    var topicContentTpl = $('#topicContentTpl').html();
                    for(var i=0;i<s.data.length;i++){
                        var time = formatDate(s.data[i].addTime)
                        var topicListCont=template( 
                            topicContentTpl, { 
                                topicContentList: [{ 
                                    addTime:time,      // 话题日期
                                    commentNum:s.data[i].commentNum,        // 评论数量
                                    topicContent:s.data[i].topicContent,        // 话题内容
                                    topicId:s.data[i].topicId,      // 话题id
                                    topicName:s.data[i].topicName ,      // 话题名称
                                    topicCommentId:i+1
                                }] 
                            } 
                        ); 
                        $('.topic_list').append(topicListCont); 
                    };
                    // 点击评论，出现添加评论窗口
                    $('.commentlist_num').click(function(){
                        var ifag = $(this).attr('data-ifag');
                        if(ifag == 'true'){
                            $(this).parents().next('.topic_commen').css('display','block');
                            $(this).attr('data-ifag','false');
                        }else{
                            $(this).parents().next('.topic_commen').css('display','none');
                            $(this).attr('data-ifag','true');
                        }
                        var data = {
                            topicId:$(this).attr('data-id'),
                            pageNo:'1'
                        }
                        var idNum = $(this).attr('data-id');
                        getTopicCommentPageInfo(new_url,data,idNum)
                    });
                    // 该话题评论列表
                    // var commentlistTpl = $('#commentlistTpl').html();
                    // for(var j=0;j<s.data.length;j++){
                    //     if(s.data[j].commentList.length>0){
                    //         for(var k=0;k<s.data[j].commentList.length;k++){
                    //             var addTime = formatDate(s.data[j].commentList[k].addTime);   // 时间显示
                    //             var commentlistCont=template( 
                    //                 commentlistTpl, { 
                    //                     commentlist: [{ 
                    //                         addTime:addTime,
                    //                         content:s.data[j].commentList[k].content,
                    //                         nickName:s.data[j].commentList[k].nickName,
                    //                         memberAvatar:s.data[j].commentList[k].memberAvatar
                    //                     }] 
                    //                 } 
                    //             ); 
                    //             var h = (j+1);
                    //             var a = '#commentList'+h;
                    //             $(a).append(commentlistCont); 
                    //             $(a).next().css('display','block');
                                
                    //         }; 
                    //     }
                        
                    // };
                    
                    $('.topic_page li').click(function(){
                        var topicId = $(this).parents('.topic_page').attr('data-topicId');
                        var pageNo = $(this).text();
                    })
                    // getTopicCommentPageInfo(new_url,data,pageNo)
                    var topicImageTpl = $('#topicImageTpl').html();
                    for(var q=0;q<s.data.length;q++){ 
                        if(s.data[q].imageList!=null){
                            for(var z=0;z<s.data[q].imageList.length;z++){
                                var topicImageCont=template( 
                                    topicImageTpl, { 
                                        topicImageList: [{ 
                                            topicImage:s.data[q].imageList[z].topicImage
                                        }] 
                                    } 
                                ); 
                                var a = (q+1);
                                var w = '#topicImage'+a;
                                $(w).append(topicImageCont); 
                                var b = w+' li img';
                                // 点击话题图片放大
                                $(b).click(function(){
                                    var imgSrc = $(this).attr('src'); 
                                    $('.pic_img img').attr('src',imgSrc);
                                    var img = new Image();
                                    img.src = imgSrc;
                                    var picWidth = img.width;
                                    var picHeight = img.height;
                                    $('.pic_pop_bg').css('display','block');
                                    $('.pic_img').css({
                                        'display':'block'
                                    });
                                });
                            }
                        }
                        
                    }
                    // 话题评论添加
                    $('.topic_btn').click(function(){
                        if($.cookie('user')!=''&&$.cookie('user')!=null){
                            var content = $(this).prev('.topic_info').val();
                            if(content == ''){
                                tc('请填写评论信息');
                            }else{
                                var strs=$.cookie('user').split(",");
                                var token=strs[6];
                                var topicId = $(this).attr('data-id');
                                var itemCommonId = id;
                                var data = {token:token,topicId:topicId,itemCommonId:itemCommonId,content:content}; 
                                // $('.topic_list, .topic_top').html('');
                                $.ajax({
                                    url:new_url+'shop/crowd/addNewTopic',
                                    type:'post',
                                    data:data,
                                    dataType:'json',
                                    success:function(respone){
                                        if(respone.code == '0'){
                                            tc(respone.message);
                                            $('.topic_list, .topic_top').empty();
                                            setTimeout(function(){
                                                getTopicContentList(id);
                                            },200);
                                            // $(this).parents('.topic_commentlist').html('');
                                            
                                        }else{
                                            if(respone.code == '1005'){
                                                setTimeout(function(){
                                                    $('.popover_m, .site_bg').fadeIn()
                                                    $('.gb_01, .popover_m').click(function(){
                                                        $('.popover_m, .site_bg').fadeOut()
                                                    });
                                                },200);
                                            }else{
                                                tc(respone.message);
                                            }
                                        };
                                    },
                                });
                            }
                        }else{
                            setTimeout(function(){
                                $('.popover_m, .site_bg').fadeIn()
                                $('.gb_01, .popover_m').click(function(){
                                    $('.popover_m, .site_bg').fadeOut()
                                });
                            },200);
                        };
                    });
                }else{
                    $('.topic_list').append('<div style="width:100%;height:380px;line-height:380px;text-align:center;">暂无项目话题！</div>');
                };
            };
        },
    });
}
// 添加收藏
function addNewItemCollect(id,token){
    var data={
        token:token,
        itemCommonId:id
    };
    $.ajax({
        type:'post',
        url:new_url+'shop/crowd/addNewItemCollect',
        dataType:'json',
        data:data,  
        success:function(e){
            if(e.code == '0'){
                tc(e.message);
                setTimeout(function(){
                    window.location.reload();
                },200);
            }else{
                if(e.code == '1005'){
                    setTimeout(function(){
                        $('.popover_m, .site_bg').fadeIn()
                        $('.gb_01, .popover_m').click(function(){
                            $('.popover_m, .site_bg').fadeOut()
                        });
                    },200);
                }else{
                    tc(e.message);
                }
            }
        }
    })
}
// 话题评论分页
function getTopicCommentPageInfo(new_url,data,idNum){
    $.ajax({
        url:new_url+'shop/crowdfunding/getTopicCommentPageInfo',
        type:'post',
        data:data,
        dataType:'json',
        success:function(e){
            var b = '#commentList'+idNum;
            $(b).empty();
            $(b).siblings('.topic_page').empty();
            // 该话题评论列表
            var commentlistTpl = $('#commentlistTpl').html();
            for(var i=0; i<e.data.topicContentList.length;i++){
                var addTime = formatDate(e.data.topicContentList[i].addTime);   // 时间显示
                var commentlistCont=template( 
                    commentlistTpl, { 
                        commentlist: [{ 
                            addTime:addTime,
                            content:e.data.topicContentList[i].content,
                            nickName:e.data.topicContentList[i].nickName,
                            memberAvatar:e.data.topicContentList[i].memberAvatar
                        }] 
                    } 
                ); 
                var a = '#commentList'+idNum;
                $(a).append(commentlistCont);
            }
            // 分页信息
            var topicPageTpl = $('#topicPageTpl').html();
            for(var j=0;j<e.data.pageInfo.totalPages;j++){
                var index = j+1;
                var topicPageCont = template(
                    topicPageTpl,{
                        topicPageList:[{
                            index:index
                        }]
                    }
                );
                var a = '#commentList'+idNum;
                var ulWidth = 37 * e.data.pageInfo.totalPages;  
                $(a).siblings('.topic_page').append(topicPageCont);  
                $(a).siblings('.topic_page').css('width',ulWidth);  
            }
            var k = 'page'+e.data.pageInfo.pageNo; 
            $('.topic_page li').each(function(){ 
                var j = $(this).attr('id'); 
                if(j == k){ 
                    $(this).addClass('active'); 
                }
            }); 
            $('.topic_page li').click(function(){
                var data = {
                    topicId:idNum,
                    pageNo:$(this).text()
                }
                getTopicCommentPageInfo(new_url,data,idNum);
            }); 
        }
    });
}
function getLocalTime(nS) {     
    return new Date(parseInt(nS) * 1000).toLocaleString().replace(/年|月/g, "-").replace(/日/g, " ");  
}
// 时间格式化
function add0(m){return m<10?'0'+m:m }  
function formatDate(needTime){  
    //needTime是整数，否则要parseInt转换  
    var time = new Date(parseInt(needTime)*1000);  
    var y = time.getFullYear();  
    var m = time.getMonth()+1;  
    var d = time.getDate();  
    var h = time.getHours();  
    var mm = time.getMinutes();  
    var s = time.getSeconds();  
    return y+'/'+add0(m)+'/'+add0(d)+' '+add0(h)+':'+add0(mm)+':'+add0(s);  
} 
// 将 &lt; &quot; 等符号转化成 < > 等标签符号
function html_decode(str){  
    var s = "";  
    if (str.length == 0) return "";  
    s = str.replace(/\&lt;/g, '<');  
    s = s.replace(/\&quot;/g, '"');  
    s = s.replace(/\&gt;/g, ">");  
    s = s.replace(/\ /g, " ");  
    s = s.replace(/\'/g, "\'");  
    s = s.replace(/\"/g, "\"");  
    return s;  
}
//到某一个时间的倒计时
//getEndTime('2017/7/22 16:0:0')
//result："剩余时间6天 2小时 28 分钟20 秒"
function getEndTime(endTime,type){
    var startDate = new Date(); //开始时间，当前时间
    var endDate = new Date(endTime); //结束时间，需传入时间参数
    var t = endDate.getTime() - startDate.getTime(); //时间差的毫秒数
    var d = 0,
        h = 0,
        m = 0,
        s = 0;
    if (t >= 0) {
        d = Math.floor(t / 1000 / 3600 / 24);
        h = Math.floor(t / 1000 / 60 / 60 % 24);
        m = Math.floor(t / 1000 / 60 % 60);
        s = Math.floor(t / 1000 % 60);
        (m<10) ? m='0'+m : m= m;
        (s<10) ? s='0'+s : s= s;
    }
    if(d<=0){
        if(h<=0){
            return `${m}分钟${s}秒`;
        }else{
            return `${h}小时${m}分`;
        }
    }else{
        return `${d}天${h}小时`;
    }
    
}